Brian Durán

Tarea: Sesión 2 y 3


I Parte


  1. Ejecute las siguientes instrucciones para practicar el uso algunos comandos de la matemática de R.
    1. pi*2^3-sqrt(4)
    2. abs(12-17*2/3-9)
    3. factorial(4)
    4. log(2,10)
    5. log(2)
    6. exp(0.069314725)
pi*2^3-sqrt(4)
[1] 23.13274
The working directory was changed to C:/Users/Brian/Documents inside a notebook chunk. The working directory will be reset when the chunk is finished running. Use the knitr root.dir option in the setup chunk to change the working directory for notebook chunks.
abs(12-17*2/3-9)
[1] 8.333333
factorial(4)
[1] 24
log(2,10)
[1] 0.30103
log(2)
[1] 0.6931472
exp(0.069314725)
[1] 1.071773


  1. Calcule en R el valor de x, sabiendo que:

    x = 1 + y / 1 + 2z^2
    y = 10
    z = pi
y <- 10
z <- pi
x <- (1 + y) / (1 + 2*z^2)
x
[1] 0.5303963


  1. Calcule en R el valor de z, sabiendo que

    z = sqrt(x^2 + y^2)
    x = -10
    y = pi
x <- -10
y <- pi
z <- sqrt(x^2+y^2)
z
[1] 10.48187


  1. Dado x = (3,−5, 31, −1,−9, 10,0, 18) y y = (1, 1, −3, 1,−99, −10, 10, −7), realice lo siguiente:


  1. Introduzca x e y como vectores de R
x <- c(3, −5, 31, −1, −9, 10, 0, 18)
y <- c(1, 1, −3, 1, −99, −10, 10, −7)


  1. Calcule el ángulo entre los vectores x e y
x <- c(3, −5, 31, −1, −9, 10, 0, 18)
y <- c(1, 1, −3, 1, −99, −10, 10, −7)

norma_x <- sqrt(sum(x*x))

norma_y <- sqrt(sum(y*y))

producto_punto_x_y = (sum(x*y))

phi =  acos(producto_punto_x_y/(norma_x*norma_y))

phi
[1] 1.423855


  1. Extraiga las entradas 2 y 7 del vector x
x <- c(3, −5, 31, −1, −9, 10, 0, 18)
x[c(2, 7)]
[1] -5  0


  1. Extraigas de y todas las entradas de dicho vector, excepto las posiciones 2 y 7
y <- c(1, 1, −3, 1, −99, −10, 10, −7)
y[-c(2, 7)]
[1]   1  -3   1 -99 -10  -7


  1. Escriba un comando en R para extraer las entradas menores que -3 o mayores que 10.
x <- c(3, −5, 31, −1, −9, 10, 0, 18)
y <- c(1, 1, −3, 1, −99, −10, 10, −7)

x[x < -3 | x > 10]
[1] -5 31 -9 18
y[y < -3 | y > 10]
[1] -99 -10  -7


  1. Escriba un comando en R para extraer las entradas mayores que 0 y que sean número pares.
x <- c(3, −5, 31, −1, −9, 10, 0, 18)
y <- c(1, 1, −3, 1, −99, −10, 10, −7)

x[x > 0 & (x %% 2 == 0)]
[1] 10 18
y[y > 0 & (y %% 2 == 0)]
[1] 10


II Parte

  1. Ejecute el siguiente código:
v <- c(1,3)
print(v)
[1] 1 3
plot(3,1, xlim=c(0,5), ylim=c(0,5), xlab="x", ylab="y", lwd=3, col='red', bty='n')
arrows(0,0,3,1,col='red')

  1. Ejecute el siguiente código y explique según lo estudiado en clase: Cuáles fueron los dos vectores base para diseñar la figura?, ¿Qué significa el vector de color verde?
plot(3,1, xlim=c(0,5), ylim=c(0,5), xlab="x", ylab="y", lwd=3, col='red', bty='n')
arrows(0,0,3,1,col='red')
points(1,3,lwd=3,col='blue')
arrows(0,0,1,3,col='blue')
points(4,4,lwd=3,col='green')
arrows(0,0,4,4,col='green')
arrows(1,3,4,4,col='red',lty=3)
arrows(3,1,4,4,col='blue',lty=3)

Respuestas:

Cuáles fueron los dos vectores base para diseñar la figura?
Los vectores fueron (3, 1) y (1, 3)

¿Qué significa el vector de color verde?
El vector de color verde representa la suma de los vectores (3, 1) y (1, 3)


Realice una modificacion al Codigo, de manera que en lugar de ilustrar la suma de vectores, se ilustre la resta de los vectores base.

plot(3,1, xlim=c(0,5), ylim=c(0,5), xlab="x", ylab="y", lwd=3, col='red', bty='n')
arrows(0,0,3,1,col='red')
points(1,3,lwd=3,col='blue')
arrows(0,0,1,3,col='blue')
points(3,1,lwd=3,col='green')
points(1,3,lwd=3,col='green')
arrows(1,3,3,1,col='green')

Además, complete la siguiente tabla, explicando la función de ciertas instrucciones del comando plot y arrows.

Comando Explicación
xlim, ylim Definen el rango del eje x y el eje y en el gráfico.
xlab, ylab La opción xlab agrega un título en el eje x, mientras que ylab agrega uno en el eje y.
lwd Define el ancho de la línea en el elemento que se use, e.g. gráfico, puntos, flechas.
lty Define el tipo de línea que se va a usar para dibujar cierto elemento.
col Define el color de un elemento.
bty Opción que dibuja una caja alrededor del gráfico. Si se define como ‘n’ no se dibujara ninguna caja.

 


Autor Brian Duran

 

LS0tDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpgYGB7Y3NzLCBlY2hvID0gRkFMU0V9DQouaW5kZW50IHsNCiBtYXJnaW4tbGVmdDogMzBweDsNCn0NCmBgYA0KDQojIyMgQnJpYW4gRHVyw6FuDQohW10oLi4vbG9nb19jaWVuY2lhX2RlX2RhdG9zLnBuZykNCg0KPGgxPjxjZW50ZXI+IFRhcmVhOiBTZXNpw7NuIDIgeSAzIDwvY2VudGVyPjwvaDE+DQoNCjwvYnI+DQoNCiMjIyMgSSBQYXJ0ZQ0KDQo8L2JyPg0KDQoxLiBFamVjdXRlIGxhcyBzaWd1aWVudGVzIGluc3RydWNjaW9uZXMgcGFyYSBwcmFjdGljYXIgZWwgdXNvIGFsZ3Vub3MgY29tYW5kb3MgZGUgbGENCm1hdGVtw6F0aWNhIGRlIFIuDQogICAgYS4gcGkqMl4zLXNxcnQoNCkNCiAgICBiLiBhYnMoMTItMTcqMi8zLTkpDQogICAgYy4gZmFjdG9yaWFsKDQpDQogICAgZC4gbG9nKDIsMTApDQogICAgZS4gbG9nKDIpDQogICAgZi4gZXhwKDAuMDY5MzE0NzI1KQ0KICAgIA0KYGBge3IsIGNsYXNzLnNvdXJjZT0iaW5kZW50IiwgY2xhc3Mub3V0cHV0PSJpbmRlbnQifQ0KcGkqMl4zLXNxcnQoNCkNCmFicygxMi0xNyoyLzMtOSkNCmZhY3RvcmlhbCg0KQ0KbG9nKDIsMTApDQpsb2coMikNCmV4cCgwLjA2OTMxNDcyNSkNCmBgYA0KDQo8L2JyPg0KDQoyLiBDYWxjdWxlIGVuIFIgZWwgdmFsb3IgZGUgXyoqeCoqXywgc2FiaWVuZG8gcXVlOg0KDQogICAgYGBgDQogICAgeCA9IDEgKyB5IC8gMSArIDJ6XjINCiAgICB5ID0gMTANCiAgICB6ID0gcGkNCiAgICBgYGANCg0KYGBge3IsIGNsYXNzLnNvdXJjZT0iaW5kZW50IiwgY2xhc3Mub3V0cHV0PSJpbmRlbnQifQ0KeSA8LSAxMA0KeiA8LSBwaQ0KeCA8LSAoMSArIHkpIC8gKDEgKyAyKnpeMikNCngNCmBgYA0KDQo8L2JyPg0KDQozLiBDYWxjdWxlIGVuIFIgZWwgdmFsb3IgZGUgXyoqeioqXywgc2FiaWVuZG8gcXVlDQoNCiAgICBgYGANCiAgICB6ID0gc3FydCh4XjIgKyB5XjIpDQogICAgeCA9IC0xMA0KICAgIHkgPSBwaQ0KICAgIGBgYA0KDQpgYGB7ciwgY2xhc3Muc291cmNlPSJpbmRlbnQiLCBjbGFzcy5vdXRwdXQ9ImluZGVudCJ9DQp4IDwtIC0xMA0KeSA8LSBwaQ0KeiA8LSBzcXJ0KHheMit5XjIpDQp6DQpgYGANCg0KPC9icj4NCg0KNC4gRGFkbyBfKip4KipfID0gKDMs4oiSNSwgMzEsIOKIkjEs4oiSOSwgMTAsMCwgMTgpIHkgXyoqeSoqXyA9ICgxLCAxLCDiiJIzLCAxLOKIkjk5LCDiiJIxMCwgMTAsIOKIkjcpLA0KcmVhbGljZSBsbyBzaWd1aWVudGU6DQoNCjwvYnI+DQoNCmEuIEludHJvZHV6Y2EgXyoqeCoqXyBlIF8qKnkqKl8gY29tbyB2ZWN0b3JlcyBkZSBSDQoNCmBgYHtyLCBjbGFzcy5zb3VyY2U9ImluZGVudCIsIGNsYXNzLm91dHB1dD0iaW5kZW50In0NCnggPC0gYygzLCDiiJI1LCAzMSwg4oiSMSwg4oiSOSwgMTAsIDAsIDE4KQ0KeSA8LSBjKDEsIDEsIOKIkjMsIDEsIOKIkjk5LCDiiJIxMCwgMTAsIOKIkjcpDQpgYGANCg0KPC9icj4NCg0KYi4gQ2FsY3VsZSBlbCDDoW5ndWxvIGVudHJlIGxvcyB2ZWN0b3JlcyBfKip4KipfIGUgXyoqeSoqXw0KDQpgYGB7ciwgY2xhc3Muc291cmNlPSJpbmRlbnQiLCBjbGFzcy5vdXRwdXQ9ImluZGVudCJ9DQp4IDwtIGMoMywg4oiSNSwgMzEsIOKIkjEsIOKIkjksIDEwLCAwLCAxOCkNCnkgPC0gYygxLCAxLCDiiJIzLCAxLCDiiJI5OSwg4oiSMTAsIDEwLCDiiJI3KQ0KDQpub3JtYV94IDwtIHNxcnQoc3VtKHgqeCkpDQoNCm5vcm1hX3kgPC0gc3FydChzdW0oeSp5KSkNCg0KcHJvZHVjdG9fcHVudG9feF95ID0gKHN1bSh4KnkpKQ0KDQpwaGkgPSAgYWNvcyhwcm9kdWN0b19wdW50b194X3kvKG5vcm1hX3gqbm9ybWFfeSkpDQoNCnBoaQ0KYGBgDQoNCjwvYnI+DQoNCmMuIEV4dHJhaWdhIGxhcyBlbnRyYWRhcyAyIHkgNyBkZWwgdmVjdG9yIF8qKngqKl8NCg0KYGBge3IsIGNsYXNzLnNvdXJjZT0iaW5kZW50IiwgY2xhc3Mub3V0cHV0PSJpbmRlbnQifQ0KeCA8LSBjKDMsIOKIkjUsIDMxLCDiiJIxLCDiiJI5LCAxMCwgMCwgMTgpDQp4W2MoMiwgNyldDQpgYGANCg0KPC9icj4NCg0KZC4gRXh0cmFpZ2FzIGRlIF8qKnkqKl8gdG9kYXMgbGFzIGVudHJhZGFzIGRlIGRpY2hvIHZlY3RvciwgZXhjZXB0byBsYXMgcG9zaWNpb25lcyAyIHkgNw0KDQpgYGB7ciwgY2xhc3Muc291cmNlPSJpbmRlbnQiLCBjbGFzcy5vdXRwdXQ9ImluZGVudCJ9DQp5IDwtIGMoMSwgMSwg4oiSMywgMSwg4oiSOTksIOKIkjEwLCAxMCwg4oiSNykNCnlbLWMoMiwgNyldDQpgYGANCg0KPC9icj4NCg0KZS4gRXNjcmliYSB1biBjb21hbmRvIGVuIFIgcGFyYSBleHRyYWVyIGxhcyBlbnRyYWRhcyBtZW5vcmVzIHF1ZSAtMyBvIG1heW9yZXMgcXVlIDEwLg0KYGBge3IsIGNsYXNzLnNvdXJjZT0iaW5kZW50IiwgY2xhc3Mub3V0cHV0PSJpbmRlbnQifQ0KeCA8LSBjKDMsIOKIkjUsIDMxLCDiiJIxLCDiiJI5LCAxMCwgMCwgMTgpDQp5IDwtIGMoMSwgMSwg4oiSMywgMSwg4oiSOTksIOKIkjEwLCAxMCwg4oiSNykNCg0KeFt4IDwgLTMgfCB4ID4gMTBdDQoNCnlbeSA8IC0zIHwgeSA+IDEwXQ0KYGBgDQoNCjwvYnI+DQoNCmYuIEVzY3JpYmEgdW4gY29tYW5kbyBlbiBSIHBhcmEgZXh0cmFlciBsYXMgZW50cmFkYXMgbWF5b3JlcyBxdWUgMCB5IHF1ZSBzZWFuIG7Dum1lcm8gcGFyZXMuDQoNCmBgYHtyLCBjbGFzcy5zb3VyY2U9ImluZGVudCIsIGNsYXNzLm91dHB1dD0iaW5kZW50In0NCnggPC0gYygzLCDiiJI1LCAzMSwg4oiSMSwg4oiSOSwgMTAsIDAsIDE4KQ0KeSA8LSBjKDEsIDEsIOKIkjMsIDEsIOKIkjk5LCDiiJIxMCwgMTAsIOKIkjcpDQoNCnhbeCA+IDAgJiAoeCAlJSAyID09IDApXQ0KeVt5ID4gMCAmICh5ICUlIDIgPT0gMCldDQpgYGANCg0KPC9icj4NCg0KIyMjIyBJSSBQYXJ0ZQ0KDQoxLiBFamVjdXRlIGVsIHNpZ3VpZW50ZSBjw7NkaWdvOg0KDQpgYGB7ciwgY2xhc3Muc291cmNlPSJpbmRlbnQiLCBjbGFzcy5vdXRwdXQ9ImluZGVudCJ9DQp2IDwtIGMoMSwzKQ0KcHJpbnQodikNCmBgYA0KDQpgYGB7cn0NCnBsb3QoMywxLCB4bGltPWMoMCw1KSwgeWxpbT1jKDAsNSksIHhsYWI9IngiLCB5bGFiPSJ5IiwgbHdkPTMsIGNvbD0ncmVkJywgYnR5PSduJykNCmFycm93cygwLDAsMywxLGNvbD0ncmVkJykNCmBgYA0KDQoNCjIuIEVqZWN1dGUgZWwgc2lndWllbnRlIGPDs2RpZ28geSBleHBsaXF1ZSBzZWfDum4gbG8gZXN0dWRpYWRvIGVuIGNsYXNlOiBDdcOhbGVzIGZ1ZXJvbiBsb3MgZG9zIHZlY3RvcmVzIGJhc2UgcGFyYSBkaXNlw7FhciBsYSBmaWd1cmE/LCDCv1F1w6kgc2lnbmlmaWNhIGVsIHZlY3RvciBkZSBjb2xvciB2ZXJkZT8NCg0KYGBge3J9DQpwbG90KDMsMSwgeGxpbT1jKDAsNSksIHlsaW09YygwLDUpLCB4bGFiPSJ4IiwgeWxhYj0ieSIsIGx3ZD0zLCBjb2w9J3JlZCcsIGJ0eT0nbicpDQphcnJvd3MoMCwwLDMsMSxjb2w9J3JlZCcpDQpwb2ludHMoMSwzLGx3ZD0zLGNvbD0nYmx1ZScpDQphcnJvd3MoMCwwLDEsMyxjb2w9J2JsdWUnKQ0KcG9pbnRzKDQsNCxsd2Q9Myxjb2w9J2dyZWVuJykNCmFycm93cygwLDAsNCw0LGNvbD0nZ3JlZW4nKcK/DQphcnJvd3MoMSwzLDQsNCxjb2w9J3JlZCcsbHR5PTMpDQphcnJvd3MoMywxLDQsNCxjb2w9J2JsdWUnLGx0eT0zKQ0KYGBgDQoNClJlc3B1ZXN0YXM6DQoNCkN1w6FsZXMgZnVlcm9uIGxvcyBkb3MgdmVjdG9yZXMgYmFzZSBwYXJhIGRpc2XDsWFyIGxhIGZpZ3VyYT8gPC9icj4NCkxvcyB2ZWN0b3JlcyBmdWVyb24gKDMsIDEpIHkgKDEsIDMpDQoNCsK/UXXDqSBzaWduaWZpY2EgZWwgdmVjdG9yIGRlIGNvbG9yIHZlcmRlPyA8L2JyPg0KRWwgdmVjdG9yIGRlIGNvbG9yIHZlcmRlIHJlcHJlc2VudGEgbGEgc3VtYSBkZSBsb3MgdmVjdG9yZXMgKDMsIDEpIHkgKDEsIDMpDQoNCjwvYnI+DQoNClJlYWxpY2UgdW5hIG1vZGlmaWNhY2lvbiBhbCBDb2RpZ28sIGRlIG1hbmVyYSBxdWUgZW4gbHVnYXIgZGUgaWx1c3RyYXIgbGEgc3VtYSBkZSB2ZWN0b3Jlcywgc2UgaWx1c3RyZSBsYSByZXN0YSAgZGUgbG9zIHZlY3RvcmVzIGJhc2UuDQoNCmBgYHtyfQ0KcGxvdCgzLDEsIHhsaW09YygwLDUpLCB5bGltPWMoMCw1KSwgeGxhYj0ieCIsIHlsYWI9InkiLCBsd2Q9MywgY29sPSdyZWQnLCBidHk9J24nKQ0KYXJyb3dzKDAsMCwzLDEsY29sPSdyZWQnKQ0KcG9pbnRzKDEsMyxsd2Q9Myxjb2w9J2JsdWUnKQ0KYXJyb3dzKDAsMCwxLDMsY29sPSdibHVlJykNCnBvaW50cygzLDEsbHdkPTMsY29sPSdncmVlbicpDQpwb2ludHMoMSwzLGx3ZD0zLGNvbD0nZ3JlZW4nKQ0KYXJyb3dzKDEsMywzLDEsY29sPSdncmVlbicpDQpgYGANCg0KQWRlbcOhcywgY29tcGxldGUgbGEgc2lndWllbnRlIHRhYmxhLCBleHBsaWNhbmRvIGxhIGZ1bmNpw7NuIGRlIGNpZXJ0YXMgaW5zdHJ1Y2Npb25lcyBkZWwgY29tYW5kbyBwbG90IHkgYXJyb3dzLg0KDQpDb21hbmRvICAgIHwgRXhwbGljYWNpw7NuDQotLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLQ0KeGxpbSwgeWxpbSB8IERlZmluZW4gZWwgcmFuZ28gZGVsIGVqZSB4IHkgZWwgZWplIHkgZW4gZWwgZ3LDoWZpY28uDQp4bGFiLCB5bGFiIHwgTGEgb3BjacOzbiAqKnhsYWIqKiBhZ3JlZ2EgdW4gdMOtdHVsbyBlbiBlbCBlamUgeCwgbWllbnRyYXMgcXVlICoqeWxhYioqIGFncmVnYSB1bm8gZW4gZWwgZWplIHkuDQpsd2QgICAgICAgIHwgRGVmaW5lIGVsIGFuY2hvIGRlIGxhIGzDrW5lYSBlbiBlbCBlbGVtZW50byBxdWUgc2UgdXNlLCBlLmcuIGdyw6FmaWNvLCBwdW50b3MsIGZsZWNoYXMuDQpsdHkgICAgICAgIHwgRGVmaW5lIGVsIHRpcG8gZGUgbMOtbmVhIHF1ZSBzZSB2YSBhIHVzYXIgcGFyYSBkaWJ1amFyIGNpZXJ0byBlbGVtZW50by4NCmNvbCAgICAgICAgfCBEZWZpbmUgZWwgY29sb3IgZGUgdW4gZWxlbWVudG8uDQpidHkgICAgICAgIHwgT3BjacOzbiBxdWUgZGlidWphIHVuYSBjYWphIGFscmVkZWRvciBkZWwgZ3LDoWZpY28uIFNpIHNlIGRlZmluZSBjb21vICAqKiduJyoqIG5vIHNlIGRpYnVqYXJhIG5pbmd1bmEgY2FqYS4NCg0KDQo8IS0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tPg0KPCEtLQ0KRXN0YSBzZWNjacOzbiBlcyBzb2xvIHBhcmEgYWdyZWdhciBlc3RpbG9zIHkgZWxlbWVudG9zIA0KcGVyc29uYWxpemFkb3MgYWwgaHRtbCBnZW5lcmFkbyBwb3IgclN0dWRpbyAgDQotLT4NCjwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLS0+DQoNCiZuYnNwOw0KDQo8aHIgLz4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5BdXRvciA8YSBocmVmPSJodHRwczovL2dpdGh1Yi5jb20vYmR1cmFucyI+QnJpYW4gRHVyYW48L2E+PC9wPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPjxzcGFuIHN0eWxlPSJjb2xvcjogIzgwODA4MDsiPjxlbT5iZHVyYW4wMzkzQGdtYWlsLmNvbTwvZW0+PC9zcGFuPjwvcD4NCg0KPCEtLSBBZGQgaWNvbiBsaWJyYXJ5IC0tPg0KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9mb250LWF3ZXNvbWUvNC43LjAvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIj4NCg0KPCEtLSBBZGQgZm9udCBhd2Vzb21lIGljb25zIC0tPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPg0KICAgIDxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9iZHVyYW5zL3RlY19kYXRhX3NjaWVuY2VfY291cnNlIiBjbGFzcz0iZmEgZmEtZ2l0aHViIj48L2E+DQo8L3A+DQoNCjxhIGhyZWY9Imh0dHBzOi8vZ2l0aHViLmNvbS9iZHVyYW5zL3RlY19kYXRhX3NjaWVuY2VfY291cnNlIiBjbGFzcz0iZ2l0aHViLWNvcm5lciIgYXJpYS1sYWJlbD0iVmlldyBzb3VyY2Ugb24gR2l0SHViIj48c3ZnIHdpZHRoPSI4MCIgaGVpZ2h0PSI4MCIgdmlld0JveD0iMCAwIDI1MCAyNTAiIHN0eWxlPSJmaWxsOiMxNTE1MTM7IGNvbG9yOiNmZmY7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBib3JkZXI6IDA7IHJpZ2h0OiAwOyIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0wLDAgTDExNSwxMTUgTDEzMCwxMTUgTDE0MiwxNDIgTDI1MCwyNTAgTDI1MCwwIFoiPjwvcGF0aD48cGF0aCBkPSJNMTI4LjMsMTA5LjAgQzExMy44LDk5LjcgMTE5LjAsODkuNiAxMTkuMCw4OS42IEMxMjIuMCw4Mi43IDEyMC41LDc4LjYgMTIwLjUsNzguNiBDMTE5LjIsNzIuMCAxMjMuNCw3Ni4zIDEyMy40LDc2LjMgQzEyNy4zLDgwLjkgMTI1LjUsODcuMyAxMjUuNSw4Ny4zIEMxMjIuOSw5Ny42IDEzMC42LDEwMS45IDEzNC40LDEwMy4yIiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0eWxlPSJ0cmFuc2Zvcm0tb3JpZ2luOiAxMzBweCAxMDZweDsiIGNsYXNzPSJvY3RvLWFybSI+PC9wYXRoPjxwYXRoIGQ9Ik0xMTUuMCwxMTUuMCBDMTE0LjksMTE1LjEgMTE4LjcsMTE2LjUgMTE5LjgsMTE1LjQgTDEzMy43LDEwMS42IEMxMzYuOSw5OS4yIDEzOS45LDk4LjQgMTQyLjIsOTguNiBDMTMzLjgsODguMCAxMjcuNSw3NC40IDE0My44LDU4LjAgQzE0OC41LDUzLjQgMTU0LjAsNTEuMiAxNTkuNyw1MS4wIEMxNjAuMyw0OS40IDE2My4yLDQzLjYgMTcxLjQsNDAuMSBDMTcxLjQsNDAuMSAxNzYuMSw0Mi41IDE3OC44LDU2LjIgQzE4My4xLDU4LjYgMTg3LjIsNjEuOCAxOTAuOSw2NS40IEMxOTQuNSw2OS4wIDE5Ny43LDczLjIgMjAwLjEsNzcuNiBDMjEzLjgsODAuMiAyMTYuMyw4NC45IDIxNi4zLDg0LjkgQzIxMi43LDkzLjEgMjA2LjksOTYuMCAyMDUuNCw5Ni42IEMyMDUuMSwxMDIuNCAyMDMuMCwxMDcuOCAxOTguMywxMTIuNSBDMTgxLjksMTI4LjkgMTY4LjMsMTIyLjUgMTU3LjcsMTE0LjEgQzE1Ny45LDExNi45IDE1Ni43LDEyMC45IDE1Mi43LDEyNC45IEwxNDEuMCwxMzYuNSBDMTM5LjgsMTM3LjcgMTQxLjYsMTQxLjkgMTQxLjgsMTQxLjggWiIgZmlsbD0iY3VycmVudENvbG9yIiBjbGFzcz0ib2N0by1ib2R5Ij48L3BhdGg+PC9zdmc+PC9hPjxzdHlsZT4uZ2l0aHViLWNvcm5lcjpob3ZlciAub2N0by1hcm17YW5pbWF0aW9uOm9jdG9jYXQtd2F2ZSA1NjBtcyBlYXNlLWluLW91dH1Aa2V5ZnJhbWVzIG9jdG9jYXQtd2F2ZXswJSwxMDAle3RyYW5zZm9ybTpyb3RhdGUoMCl9MjAlLDYwJXt0cmFuc2Zvcm06cm90YXRlKC0yNWRlZyl9NDAlLDgwJXt0cmFuc2Zvcm06cm90YXRlKDEwZGVnKX19QG1lZGlhIChtYXgtd2lkdGg6NTAwcHgpey5naXRodWItY29ybmVyOmhvdmVyIC5vY3RvLWFybXthbmltYXRpb246bm9uZX0uZ2l0aHViLWNvcm5lciAub2N0by1hcm17YW5pbWF0aW9uOm9jdG9jYXQtd2F2ZSA1NjBtcyBlYXNlLWluLW91dH19PC9zdHlsZT4NCg0KPHNjcmlwdD4NCiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uICgpIHsNCiAgICAkKCdwcmUucicpLmFkZENsYXNzKCdpbmRlbnQnKTsNCn0pOw0KPC9zY3JpcHQ+DQoNCjxzdHlsZT4NCi5pbmRlbnQgew0KIG1hcmdpbi1sZWZ0OiAzMHB4Ow0KfQ0KPC9zdHlsZT4NCg0KJm5ic3A7DQoNCg0K